#ifndef _WIN32_CLIENT_H_
#define _WIN32_CLIENT_H_
#include "PCH.h"
#include "AppClient.h"

namespace DeviousRenderer
{
class Win32Client : public AppClient
{
public:
	Win32Client();
	virtual ~Win32Client();
	void DeferMessage();
	void ProcessDeferredMessages();
	void PumpOSMessage();

	virtual bool Init();
	virtual void Loop();
	virtual void Tick(float deltaTime);
	virtual void Exit();

	virtual void SetWidth(int width);
	virtual void SetHeight(int height);
	virtual void SetSize(int width, int height);
	virtual void SetPosition(int left, int top);
	virtual void SetCaption(std::wstring& caption);

	virtual int	GetWidth();
	virtual int	GetHeight();
	virtual int	GetLeft();
	virtual int	GetTop();

	virtual void UpdateState();

protected:
	HWND			m_hWnd;	
	DWORD			m_dWinStyle;
	
};

}

#endif//_WIN32_CLIENT_H_